Tegra: memctrl_v2: fix "overflow before widen" coverity issue
authorVarun Wadekar <[email protected]>
Thu, 5 Sep 2019 15:17:02 +0000 (08:17 -0700)
committerVarun Wadekar <[email protected]>
Thu, 5 Sep 2019 15:40:38 +0000 (08:40 -0700)
This patch fixes a coding error, where the size of the protected memory area
was truncated due to an incorrect typecast.

This defect was found by coverity and reported as CID 336781.

Change-Id: I41878b0a9a5e5cd78ef3393fdc7b9ea7f7403ed3
Signed-off-by: Varun Wadekar <[email protected]>
plat/nvidia/tegra/common/drivers/memctrl/memctrl_v2.c

index a3ef5e13137640c321ed90e4a4f98aebbabd776b..2f31906d836af646d708fd3897eeef8acfb22d25 100644 (file)
@@ -1,5 +1,6 @@
 /*
  * Copyright (c) 2015-2017, ARM Limited and Contributors. All rights reserved.
+ * Copyright (c) 2019, NVIDIA Corporation. All rights reserved.
  *
  * SPDX-License-Identifier: BSD-3-Clause
  */
@@ -360,17 +361,15 @@ void tegra_memctrl_videomem_setup(uint64_t phys_base, uint32_t size_in_bytes)
 
        if ((phys_base > vmem_end_old) || (video_mem_base > vmem_end_new)) {
                tegra_clear_videomem(video_mem_base,
-                                    (uint32_t)video_mem_size_mb << 20U);
+                                    video_mem_size_mb << 20U);
        } else {
                if (video_mem_base < phys_base) {
                        non_overlap_area_size = phys_base - video_mem_base;
-                       tegra_clear_videomem(video_mem_base,
-                                       (uint32_t)non_overlap_area_size);
+                       tegra_clear_videomem(video_mem_base, non_overlap_area_size);
                }
                if (vmem_end_old > vmem_end_new) {
                        non_overlap_area_size = vmem_end_old - vmem_end_new;
-                       tegra_clear_videomem(vmem_end_new,
-                                       (uint32_t)non_overlap_area_size);
+                       tegra_clear_videomem(vmem_end_new, non_overlap_area_size);
                }
        }